home *** CD-ROM | disk | FTP | other *** search
- extern Boolean CrsrNew : 0x8CE;
- extern Point mTemp : 0x828;
-
-
- pascal OSErr main(AEDescList *aevt, AEDescList *reply, long refCon) {
- Point p;
- OSErr err;
- AEDesc PointListDesc;
- long numItems = 0;
- DescType actualType;
- long actualSize;
- AEKeyword actualKeyword;
- short* hPoint;
- short* vPoint;
-
- PointListDesc.descriptorType = 'null';
- //Extract the list elements
- err = AEGetKeyDesc(aevt, keyDirectObject, typeAEList, &PointListDesc );
- if (err) goto done;
-
- /* Count the list elements */
- err = AECountItems( &PointListDesc, &numItems);
- if (err) goto done;
-
- if (numItems == 2) {
- //Make sure there were only two items
- err = AEGetNthPtr( &PointListDesc, 1, 'shor', &actualKeyword,
- &actualType, (Ptr)&mTemp.h, sizeof(mTemp.h), &actualSize);
- if (err) goto done;
- err = AEGetNthPtr( &PointListDesc, 2, 'shor', &actualKeyword,
- &actualType, (Ptr)&mTemp.v, sizeof(mTemp.v), &actualSize);
- if (err) goto done;
- CrsrNew = true;
- } else {
- err = errAEEventNotHandled; //We didn't handle the event
- }
-
-
- done:
- (void)AEDisposeDesc(&PointListDesc);
- return err;
- }